<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>14vue-v-for中key的使用</title>
    <script type="text/javascript" src="static/vue.min.js"></script>
</head>

<body>
<div class="tab_con">
    <div>
        ID: <input type="text" v-model="id"><br>
        Name: <input type="text" v-model="name"><br>
        <input type="button" value="添加" @click="add()">
    </div>
    <!-- 注意： v-for 循环的时候，key 属性只能使用 number获取string -->
    <!-- 注意： key 在使用的时候，必须使用 v-bind 属性绑定的形式，指定 key 的值 -->
    <!-- 在组件中，使用v-for循环的时候，或者在一些特殊情况中，如果 v-for 有问题，
    必须 在使用 v-for 的同时，指定 唯一的 字符串/数字 类型 :key 值 -->
    <div v-for="obj in objList" :key="obj.id">
        <input type="checkbox">{{obj.id}}---{{obj.name}}
    </div>
</div>
<script>
    new Vue({
        el: ".tab_con",
        data: {
            id: "",
            name: "",
            objList: [
                {id: 1001, name: "张三"},
                {id: 1002, name: "马六"},
                {id: 1003, name: "王五"},
                {id: 1004, name: "李四"},
            ]

        },
        methods: {
            add: function () {
                this.objList.unshift({id: this.id, name: this.name})
            }
        }
    });
</script>
</body>
</html>